(
	window.onload = function() {

		//1.为#province添加onchang响应函数
		document.getElementById("province").onchange = function() {

			//1.1把#city节点除第一个子节点外都移除
			var cityNode = document.getElementById("city");
			var cityOptionNodes = cityNode.getElementsByTagName("option");
			var len = cityOptionNodes.length
			for(var i = 1; i < len; i++) {
				cityNode.removeChild(cityOptionNodes[1]);
			}

			var provinceVal = this.value;
			if(provinceVal == "") {
				return;
			}

			//2.加载cities.xml文件.得到代表文档给document对象
			var xmlDoc = parseXml("cities.xml");

			//3.在cities.xml文档中查找和选择的省匹配的province节点.
			//var provinces = xmlDoc.getElementsByTagName("province");
			//alert(provinces.length);
			//var provinceVal = this.value;

			//直接使用XPath技术查找XML文当中的匹配节点.
			var provinceEles = xmlDoc.selectNodes("//province[@name='" + provinceVal + "']")

			//4.在得到province节点的所有的city子节点
			var cityNodes = provinceEles[0].getElementsByTagName("city");

			//5.遍历city子节点，得到每一个city的节点值.
			for(var i = 0; i < cityNodes.length; i++) {
				var cityText = cityNodes[i].firstChild.nodeValue;
				//alert(cityNodes[i].firstChild.nodeValue);

				//6.利用得到的文本值创建option节点	
				var cityTextNode = document.createTextNode(cityText);
				var optionNode = document.createElement("option");
				optionNode.appendChild(cityTextNode);

				//7.并把6创建的option子节点添加为#city的子节点
				cityNode.appendChild(optionNode);
			}

		}

		/**
		 * js解析XML文档的函数，只支持IE
		 * 
		 * @param {Object} fileName
		 */
		function parseXml(fileName) {
			//IE内核的浏览器
			if(window.ActiveXObject) {
				//创建DOM解析器
				var doc = new ActiveXObject("Microsoft.XMLDOM");
				doc.async = "false";
				//加载XML文档，获取XML文档对象
				doc.load(fileName);
				return doc;
			}
		}
	}
)